feat: --all-platforms option for dbc list - #467
Open
wbeardall wants to merge 2 commits into
Open
Conversation
…to host platform, so standard install use-case is unaffected. WASM ops do not expose platform selection.
This was referenced Aug 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to PR #466
Problem
With the new cross-platform install options proposed in PR #466, the following scenario introduces potential user confusion risk:
dbc install postgres --platform <not-my-platform>dbc list. Currentdbc listdoes not distinguish between the presence of drivers for the host platform vs other platforms, and so prints the following:Proposal
We propose to:
dbc list, so that only drivers which are compatible with the host machine show up in the printed summary--all-platformsflag todbc list, which adds an additionalPLATFORMcolumn to the printed table, containing the platform tuple for each available driver. Host-compatible drivers are marked with(*)(e.g.linux_amd64 (*))defaultPathconfigurationsdbc<driver>.tomlconfig files accept two shared path configurations:driverMap:
defaultPath:
driverMap is trivial; however, for the defaultPath pattern, we assume that, in absence of explicit platform information, the linked driver is host-compatible.
## Tests
config/driver_test.goTestLoadDriverFromManifest(extended)HasPlatform/PlatformTuplesfor platform-map manifestsTestDriverMapDefaultPath(new)shared→HasPlatformtrue for any platformUsesDefaultPathtrue,PlatformTuplesemptycmd/dbc/list_test.goTestListHidesNonHostPlatformDriverdbc listTestListAllPlatformsShowsCrossPlatformDriverPLATFORMcolumn;(*)only when tuple is hostTestListAllPlatformsMarksHostDriverPlatformTuple() + " (*)"under--all-platformsTestListAllPlatformsJSONIncludesPlatformplatformfield populated when--all-platformsis set